<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1. Array.from(); : 可以把伪数组转成数组；
        // function fn(){
        //     console.log(arguments)
        //     var arr = Array.from(arguments);
        //     console.log(arr);
        // }
        // fn(1,2,3);

        // 2.Array.of(); 创建一个数组 ；
        // ES5 创建数组 
        // 一个参数 创建一个 长度为这个参数的空数组 
        // 多个参数 会把多个参数作为数组的键值 ；
        // var arr = new Array(7,8);
        // console.log(arr);
        // var arr = new Array(7);

        // ES6  : 创建一个 键值是 参数的数组
        // var arr = Array.of(7,8);
        // console.log(arr);

        // 3.Array.isArray(); 判断是否是一个数组；
        // var arr = {};
        // var res = Array.isArray(arr);
        // console.log(res);

        // 4.find ： 查找返还数组里符合条件的第一个元素；类似filter
        // var arr = [1,2,3,4,5];

        // var res =  arr.find((item,key,arr)=>{
        //     // console.log(item,key,arr);
        //     return item>2;
        // })
        // console.log(res);

        // var res2 = arr.filter((item,key,arr)=>item>2);
        // console.log(res2);

        // 5.findIndex : 查找符合条件的第一个元素的索引值；
        // var arr = ["张三","李四","王五"];
        // var key =  arr.findIndex(item=>item=="王五");
        // console.log(key);

        // 6.at(): 获取键名对应的键值；
        // var arr = ["张三","李四","王五"];
        // // console.log(arr[1]);
        // console.log(arr.at(1));

        // 7.includes ： 判断数组里是否包含某个值 ；
        // indexOf();
        // var arr = ["张三","李四","王五"];
        // var res  = arr.includes("李四111");
        // console.log(res);

        // 8.flat ： 数组的扁平化 
        // 把多维数组 降维；
        // ES5：
        // var arr  = [1,2,[3,[4,5,[6,[7]]]]];
        // // 先转字符串 然后再切割字符串；
        // var str  = arr.toString();
        // // console.log(str);
        // var newarr = str.split(",");
        // console.log(newarr);

        // ES6 ： 
        // var arr  = [1,2,[3,[4,5,[6,[7]]]]];
        // // var newarr = arr.flat();  // 默认只会减低一维 ； 默认参数是1
        // var newarr = arr.flat(4);  // 传入参数  改变减低的维度；
        // console.log(newarr);


        // 9.fill ： 数组填充 ；
        var arr = [1,2,3,4,5];
        // arr.fill("a");  // 把 arr里所有的键值 填充成 a
        // console.log(arr);

        // arr.fill("填充的内容",填充开始的位置,填充结束的位置);
        // substring  slice 
        // arr.fill("a",1,3);  // [1,a,a,4,5];
        // console.log(arr);


    </script>
</body>
</html>